package cn.zurish.cloud.mes.toolikt;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;

public class FileReaderUtil {

    /**
     * 读取BQ开头的txt文件并将每行内容存入数组
     * @param filePath 文件路径
     * @return 包含文件每行内容的字符串数组
     * @throws IOException 如果文件读取失败
     */
    public static String[] readBQFile(String filePath) throws IOException {
        // 检查文件是否存在以及是否以BQ开头
        if (!filePath.startsWith("BQ") || !filePath.endsWith(".txt")) {
            throw new IllegalArgumentException("文件必须以BQ开头且为txt格式");
        }

        // 读取文件内容到List
        List<String> lines = Files.readAllLines(Paths.get(filePath));

        // 转换为数组返回
        return lines.toArray(new String[0]);
    }

    public static void main(String[] args) {
        try {
            // 示例：读取当前目录下的BQ20250517.txt文件
            String[] contentArray = readBQFile("BQ.txt");

            // 打印数组内容
            for (String line : contentArray) {
                System.out.println(line);
            }
        } catch (IOException e) {
            System.err.println("读取文件时出错: " + e.getMessage());
        } catch (IllegalArgumentException e) {
            System.err.println("文件格式错误: " + e.getMessage());
        }
    }
}